'宣言 Public Overloads Function MeetsCriteria( _ ByVal columnFilters() As ColumnFilter, _ ByVal logicalOperator As FilterLogicalOperator _ ) As Boolean
public bool MeetsCriteria( ColumnFilter[] columnFilters, FilterLogicalOperator logicalOperator )
渡された列フィルターおよび論理演算子によって指定される基準を行が満たす場合、True を返します。論理演算子が And で、かつ行が列フィルター配列内のすべての条件を満たす場合、このメソッドは True を返します。論理演算子が Or で、かつ行が少なくともひとつの列フィルターを満たす場合、このメソッドは True を返します。そうでない場合には、False を返します。
Imports Infragistics.Shared Imports Infragistics.Win Imports Infragistics.Win.UltraWinGrid Private Sub UltraGrid1_InitializeLayout(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles UltraGrid1.InitializeLayout ' Call RefreshFilters to cause the UltraGrid to reevaluate any filters and fire ' FilterRow event on every row. ' e.Layout.RefreshFilters() End Sub Private Sub UltraGrid1_FilterRow(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.FilterRowEventArgs) Handles UltraGrid1.FilterRow Dim band As UltraGridBand = e.Row.Band If "Customers" = band.Key Then ' Construct a ColumnFilter object. Note that we are specifying logical operator of "OR" as ' the second parameter to the constructor. That's because we want to show rows that begin ' with 'A' OR 'B'. ' Dim cf As ColumnFilter = New ColumnFilter(band.Columns("CustomerID"), FilterLogicalOperator.Or) cf.FilterConditions.Add(FilterComparisionOperator.Like, "A*") cf.FilterConditions.Add(FilterComparisionOperator.Like, "B*") ' Call MeetsCriteria off the row to test if the row passes the column filter. ' If Not e.Row.MeetsCriteria(cf) Then e.RowFilteredOut = True Else e.RowFilteredOut = False End If End If End Sub
using Infragistics.Shared; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; using System.Diagnostics; private void ultraGrid1_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e) { // Call RefreshFilters to cause the UltraGrid to reevaluate any filters and fire // FilterRow event on every row. // e.Layout.RefreshFilters( ); } private void ultraGrid1_FilterRow(object sender, Infragistics.Win.UltraWinGrid.FilterRowEventArgs e) { UltraGridBand band = e.Row.Band; if ( "Customers" == band.Key ) { // Construct a ColumnFilter object. Note that we are specifying logical operator of "OR" as // the second parameter to the constructor. That's because we want to show rows that begin // with 'A' OR 'B'. // ColumnFilter cf = new ColumnFilter( band.Columns[ "CustomerID" ], FilterLogicalOperator.Or ); cf.FilterConditions.Add( FilterComparisionOperator.Like, "A*" ); cf.FilterConditions.Add( FilterComparisionOperator.Like, "B*" ); // Call MeetsCriteria off the row to test if the row passes the column filter. // if ( ! e.Row.MeetsCriteria( cf ) ) e.RowFilteredOut = true; else e.RowFilteredOut = false; } }